package com.airena.service;

import com.airena.entity.dto.RoleInfoDTO;
import com.airena.entity.dto.RoleInfoPageQueryDTO;
import com.airena.entity.po.RoleInfo;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * <p>
 * 角色信息表 服务类
 * </p>
 *
 * @author mender
 * @since 2025-09-23
 */
public interface IRoleInfoService extends IService<RoleInfo> {

    /**
     * 根据角色id获取角色系统提示词
     * @param roleId
     * @return
     */
    String getRoleInfoString(Long roleId);

    /**
     * 根据角色id获取角色信息
     * @param roleId
     * @return
     */
    RoleInfo getRoleInfo(Long roleId);

    /**
     * 分页查询角色信息
     * @param pageQueryDTO
     * @return
     */
    Page<RoleInfo> queryRolePage(RoleInfoPageQueryDTO pageQueryDTO);

    /**
     * 删除角色信息
     * @param roleId
     * @return
     */
    int deleteRoleInfo(Long roleId);

    /**
     * 修改角色信息
     * @param roleInfoDTO
     * @return
     */
    int updateRoleInfo(RoleInfoDTO roleInfoDTO);

    /**
     * 新增角色信息
     * @param roleInfoDTO
     */
    void addRoleInfo(RoleInfoDTO roleInfoDTO);
}
